from django.db import models


# Create your models here.
class Area(models.Model):
    '''地区模型类'''
    name = models.CharField(max_length=20, verbose_name='地区名称')
    parent = models.ForeignKey('self', on_delete=models.SET_NULL, null=True, blank=True, related_name='subs', verbose_name='上级行政地区')

    '''
    null:该字段可以为空
    self:如果是自关联,关联的类是self
    on_delete: 如果删除主表数据,外键数据设置为null(如果一个省删除,省下地区设置为空)
    blank: admin站点的表格填写该字段时是否可以不填,如果不设置为True,在数据不填时,无法提交
    related_name:查询一个地区的下级地区时是('area.area_set.all()'),如果设置了该参数,查询时'area_set'可以使用'subs',就是('area.subs.all()')
    '''

    class Meta:
        db_table = 'tb_areas'
        verbose_name = '行政区划'
        verbose_name_plural = '行政区划'

    def __str__(self):
        return self.name
